Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Shmem Ports & Channel refactor development #307

Merged
merged 39 commits into from
Aug 19, 2022
Merged

Shmem Ports & Channel refactor development #307

merged 39 commits into from
Aug 19, 2022

Conversation

hexu33
Copy link
Contributor

@hexu33 hexu33 commented Aug 12, 2022

Issue Number:

Objective of pull request:

Pull request checklist

Your PR fulfills the following requirements:

  • Issue created that explains the change and why it's needed
  • Tests are part of the PR (for bug fixes / features)
  • Docs reviewed and added / updated if needed (for bug fixes / features)
  • PR conforms to Coding Conventions
  • PR applys BSD 3-clause or LGPL2.1+ Licenses to all code files
  • Lint (flakeheaven lint src/lava tests/) and (bandit -r src/lava/.) pass locally
  • Build tests (pytest) passes locally

Pull request type

Please check your PR type:

  • Bugfix
  • Feature
  • Code style update (formatting, renaming)
  • Refactoring (no functional changes, no api changes)
  • Build related changes
  • Documentation changes
  • Other (please describe):

What is the current behavior?

What is the new behavior?

Does this introduce a breaking change?

  • Yes
  • No

Supplemental information

@hexu33 hexu33 changed the title Fix Shmem channel & port build issues & Add ChannelFactory Shmem Ports & Channel refactor development Aug 16, 2022
@killight98
Copy link

@hexu33 pls add api calling of Ports & Channel into lava.magma.compiler.channels.*.

hexu33 and others added 12 commits August 18, 2022 11:13
* Convert CppIn/Out/Ref/Var-Ports (#297)

* Adding preliminary ports

* Added CppPort and CppIOPort

* Add preliminary classes for CppInPorts and CppOutPorts

* Add preliminary code for CppRefPorts

* Added preliminary CppVarPort class

* Add derived classes for CppVarPort

* Update namespace naming

* Fix linting issues

* Updated pybind11 for numpy arrays

* Fixed cpplint issues

* Added lambda functions

* Fix linting issues in Ports.h and Abstract Port cc file

* Added Python wrapper functions

* Added Pybind dtype for AbstractPortImplementation

* Added tranformer header file

* Updated transformers with parameters

* Add missing include in PyWrapper

* Add namespace for ports.cc

* Add different types of Read()

* Add transformer include and null to constants

* Swap naming of classes in PyWrapper

* Test variant on return types

* Added Python wrapper for transformer class

* Comment out Out/Ref/VarPorts for debugging

* Change to use template for Recv and Peek (CppInPort)

* Using pointers for constants

* Updated templates for all ports

* Fixed issue with vectors

* Fix linting issue

* Uncomment in PyWrapper

* Add AbstractPort, Port and Transformer to CMakeLists

Co-authored-by: shaline-koh <[email protected]>

* amend xport apis

Signed-off-by: luoxiaoc <[email protected]>

* add xport test

Signed-off-by: luoxiaoc <[email protected]>

* fix double free

Signed-off-by: luoxiaoc <[email protected]>

Signed-off-by: luoxiaoc <[email protected]>
Co-authored-by: Wen Jie Seow <[email protected]>
Co-authored-by: shaline-koh <[email protected]>
* Update shemchannel in pypychannel.py
* Update Channel and Channel Type from message_infrastructure cpplib
* update channel interface:
 Update message_infrastructure ChannelType to ChannelTransferType
 TODO: Update the relationship between SharedMem and SharedMemManager

TODO: Offload Python CSPSelect to message_infrastructure cpplib

* Update Service and Runtime Channel Builder

Signed-off-by: Miao, Hongda <[email protected]>
@killight98 killight98 merged commit 94265ef into lava-nc:messaging_refactor_develop Aug 19, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants